Procedures voor Sub en Function oproepen

   

Als u een procedure Sub vanuit een andere procedure wilt oproepen, typt u de naam van de procedure met de waarden voor alle vereiste argumenten. De instructie Call is niet vereist, maar als u deze gebruikt, moet u alle argumenten tussen haakjes zetten.

U kunt een procedure Sub gebruiken om andere procedures te ordenen, zodat deze makkelijker te begrijpen zijn en fouten eenvoudiger op te sporen zijn. In het volgende voorbeeld roept de Sub-procedure Main de Sub-procedure MultiBeep aan en geeft hierbij de waarde 56 voor het argument op. Als MultiBeep is uitgevoerd, keert de besturing terug naar Main, waarna Main de Sub-procedure Message oproept. Message geeft een berichtvenster weer. Als de gebruiker op OK klikt, keert de besturing terug naar Main en sluit Main af.

Sub Main()
    MultiBeep 56
    Bericht
End Sub

Sub MultiBeep(numbeeps)
    For counter = 1 To numbeeps
        Beep
    Next counter
End Sub

Sub Message ()
    MsgBox "Tijd voor een kopje koffie!"
End Sub

Procedures Sub met meerdere argumenten oproepen

Het volgende voorbeeld illustreert twee manieren om een procedure Sub met meer dan ΘΘn argument aan te roepen. De tweede keer dat HouseCalc wordt opgeroepen, staan de argumenten tussen haakjes, omdat de instructie Call is gebruikt.

Sub Main()
    HouseCalc 99800, 43100
    Call Housecalc (380950, 49500)
End Sub

Sub HouseCalc (price As Single, wage As Single)
    If 2,5 * wage <= 0,8 * price Then
        MsgBox "U kunt dit huis niet betalen."
    Else
        MsgBox "U kunt dit huis betalen."
    End If
End Sub

Het gebruik van haakjes bij het oproepen van procedures Function

Om de resultaatwaarde van een functie te kunnen gebruiken, wijst u de functie toe aan een variabele en zet u de argumenten tussen haakjes. Bijvoorbeeld:

Answer3 = MsgBox("Bent u tevreden met uw salaris?", 4, "Vraag 3")

Als u de resultaatwaarde van een functie niet wilt weten, kunt u een functie op dezelfde manier oproepen als een procedure Sub. U laat gewoon de haakjes weg, maakt een lijst van de argumenten en wijst de functie aan een variabele toe. Bijvoorbeeld:

MsgBox "Taak Volbracht!", 0, "Taakvenster"

Waarschuwing Als u in het voorafgaande voorbeeld haakjes plaatst, veroorzaakt de instructie een syntaxisfout.

Benoemde argumenten opgeven

Een instructie in een procedure Sub of Function kan met behulp van benoemde argumenten waarden doorgeven aan opgeroepen procedures. U kunt benoemde argumenten in elke gewenste volgorde plaatsen. Een benoemd argument bestaat uit de naam van het argument gevolgd door een dubbele punt, een gelijkteken en de waarde die aan het argument is toegewezen.

In het volgende voorbeeld wordt de functie MsgBox met behulp van benoemde argumenten en zonder resultaatwaarde opgeroepen.

MsgBox Title:="Taakvenster", Prompt:="Taak volbracht!"

In het volgende voorbeeld wordt de functie MsgBox met behulp van benoemde argumenten opgeroepen. De resultaatwaarde wordt toegewezen aan de variabele answer3.

answer3 = MsgBox(Title:=öVraag 3", _
Prompt:=" Bent u tevreden met uw salaris?", Buttons:=4)